interface MapVisionRecord {
    source?: {
        x: number;
        y: number;
    }[];
    mineral?: {
        type: MineralConstant;
        x: number;
        y: number;
    };
    controller?: {
        level: number;
        x: number;
        y: number;
    };
    structures?: {
        type: StructureConstant;
        x: number;
        y: number;
    }[];
    owner?: string;
    time: number;
    threatValue: number;
}

interface MapVisionObject {
    [roomName: string]: MapVisionRecord;
}